﻿using System.ComponentModel.DataAnnotations;

namespace Model.DTO.Ware
{
    /// <summary>
    /// 编辑商品订单DTO
    /// </summary>
    public class EditWareOrderDTO
    {
        /// <summary>
        /// 订单编号(128)
        /// </summary>
        [Required, MaxLength(128,ErrorMessage = "订单编号长度不能大于128")]
        public string Number { get; set; }
        /// <summary>
        /// 主键Id
        /// </summary>
        [Required]
        public long Id { get; set; }
        /// <summary>
        /// 创建时间
        /// </summary>
        [Required]
        public DateTime CreatedDate { get; set; } = DateTime.Now;
        /// <summary>
        /// 用户Id
        /// </summary>
        [Required]
        public int UserId { get; set; }
        /// <summary>
        /// 订单状态Id
        /// </summary>
        [Required]
        public int StateId { get; set; }
        /// <summary>
        /// 总价
        /// </summary>
        [Required]
        public decimal TotalPrice { get; set; }
        /// <summary>
        /// 优惠价格
        /// </summary>
        [Required]
        public decimal DiscountPrice { get; set; }
        /// <summary>
        /// 实付价格
        /// </summary>
        [Required]
        public decimal PayablePrice { get; set; }
        /// <summary>
        /// 支付方式Id
        /// </summary>
        [Required]
        public int PaymentTypeId { get; set; }
        /// <summary>
        /// 支付状态Id
        /// </summary>
        [Required]
        public int PaymentStateId { get; set; }
        /// <summary>
        /// 支付时间
        /// </summary>
        [Required]
        public DateTime PaymentDate { get; set; }
        /// <summary>
        /// 备注(128)
        /// </summary>
        [MaxLength(128)]
        public string? Remark { get; set; }
    }
}
